package com.atguigu.mybatis.test;

import org.apache.ibatis.reflection.MetaObject;
import org.apache.ibatis.session.Configuration;

/**
 * @program: design-patterns
 * @author: yangshen
 * @description: 外观模式
 * @create: 2022-02-22 14:07
 **/
public class Facade {

    /**
     * Mybatis中的Configuration创建MetaObject对象使用了外观模式
     * 1.客户端可以直接调用创建 MetaObject 方法来创建
     *  public MetaObject newMetaObject(Object object)
     * 2.跳转的 MetaObject.forObject 方法，聚合了三个对象实例
     */

    public static void main(String[] args){
        MetaObject metaObject = new Configuration().newMetaObject(String.class);
        System.out.println(metaObject.toString());
    }

}
